/**
 * 
 */
package ar.com.gepp.torneo.entidades.impl;

/**
 * @author gpidote
 * 
 */
public class Posicion {
	Equipo equipo;
	Integer idPosicion;
	Integer puntos;
	Integer pj;
	Integer pg;
	Integer pe;
	Integer pp;
	Integer gf;
	Integer gc;

	public Posicion() {
		this.puntos = 0;
		this.pj = 0;
		this.pg = 0;
		this.pe = 0;
		this.pp = 0;
		this.gf = 0;
		this.gc = 0;
	}
	
	/**
	 * Suma puntos con los datos de un partido
	 * @param pts
	 * @param gl
	 * @param gv
	 */
	public void sumarPartido(Integer pts, Integer gl, Integer gv) {
		sumarPuntos(pts);
		sumarGf(gl);
		sumarGc(gv);
		if (gl > gv) {
			sumarPg();
		} else {
			if (gl < gv) {
				sumarPp();
			} else {
				sumarPe();
			}
		}
		sumarPartidoJugado();
	}

	public Integer getIdPosicion() {
		return idPosicion;
	}

	public void setIdPosicion(Integer idPosicion) {
		this.idPosicion = idPosicion;
	}

	public Integer getPuntos() {
		return puntos;
	}

	public void setPuntos(Integer puntos) {
		this.puntos = puntos;
	}

	public Integer getPj() {
		return pj;
	}

	public void setPj(Integer pj) {
		this.pj = pj;
	}

	public Integer getPg() {
		return pg;
	}

	public void setPg(Integer pg) {
		this.pg = pg;
	}

	public Integer getPe() {
		return pe;
	}

	public void setPe(Integer pe) {
		this.pe = pe;
	}

	public Integer getPp() {
		return pp;
	}

	public void setPp(Integer pp) {
		this.pp = pp;
	}

	public Integer getGf() {
		return gf;
	}

	public void setGf(Integer gf) {
		this.gf = gf;
	}

	public Integer getGc() {
		return gc;
	}

	public void setGc(Integer gc) {
		this.gc = gc;
	}

	private void sumarPuntos(Integer pts) {
		setPuntos(getPuntos() + pts);
	}

	public Equipo getEquipo() {
		return equipo;
	}

	public void setEquipo(Equipo equipo) {
		this.equipo = equipo;
	}

	private void sumarPartidoJugado() {
		setPj(getPj() + 1);
	}

	private void sumarGf(Integer gf) {
		setGf(getGf() + gf);
	}

	private void sumarGc(Integer gc) {
		setGc(getGc() + gc);
	}

	private void sumarPg() {
		setPg(getPg() + 1);
	}

	private void sumarPp() {
		setPp(getPp() + 1);
	}

	private void sumarPe() {
		setPe(getPe() + 1);
	}
}
